package com.zy.design.pattern.observer.guava;

import com.google.common.eventbus.Subscribe;
import com.zy.design.pattern.observer.face.Message;

/**
 * @author zhaoyi
 * @date 2021/4/25 15:06
 */
public class DisObserverByEventBus {

    /**
     * 任意类型的对象都可以注册到 EventBus 中，通过 @Subscribe 注解来标明类中哪个函数可以接收被观察者发送的消息。
     * 不用定义接口
     */
    @Subscribe
    public void handMessage(Message message) {
        System.out.println("执行线程: "+Thread.currentThread().getName());
        int id = message.getId();
        if (id % 2 == 0) {
            System.out.println("基于Guava EventBus 观察到用户登录发放登录积分 = " + id);
        }else {
            System.out.println("!!!基于Guava EventBus 不满足积分条件 = " + id);
        }


    }
}
